1.14.8 后端部署-宝塔方式
1.宝塔安装(已安装的可跳过)
# 拉取宝塔镜像
docker pull pch18/baota:latest
# 运行宝塔镜像
docker run -tid --name baota --net=host --privileged=true --restart always -v baota_www:/www -v ~/wwwroot:/www/wwwroot pch18/baota:latest
# 进入容器内容, 安装宝塔应用到最新版
docker exec -it {容器id} /bin/bash
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh
# 安装完成后,会出现面板地址及默认账号与密码。访问ip:8888,输入账号与密码即可使用宝塔
2.在宝塔上安装mysql5.7,redis,jdk8
2.1 安装中间件
mysql, redis 使用宝塔自带的软件商店安装即可
jdk8 使用自行上传压缩包的方式安装,方法如下:
通过文件上传jdk.tar.gz 到 /www/server/java 目录下,解压jdk.tar.gz 即可,如下图:
2.2 配置运行环境与中间件
配置项目所需要的JDK
创建数据库,配置数据库访问密码
数据库名: echat, 编码为utf8mb4
数据库账号: echat
数据库密码: echatechat
4.安装后端应用
4.1上传后端应用
把 server-deploy-professional-2.20.jar 上传到宝塔 /www/wwwroot/backend/echat 目录下
另外新建logs目录,权限设置为777
4.2 部署后端应用
项目执行命令
/www/server/java/jdk1.8.0_131/bin/java -jar -DSPRING_DATASOURCE_URL="jdbc:mysql://localhost:3306/echat?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai" -DSPRING_DATASOURCE_USERNAME="echat" -DSPRING_DATASOURCE_PASSWORD="echatechat" -DSPRING_REDIS_PASSWORD="" -DFILE_HOST="baota.server.echat.work" -DFILE_RESOURCE_ADDRESS="http://baota.server.echat.work" -DFILE_UPLOAD_FILE_DIR="/www/wwwroot/echat_upload_files" -Xmx1024M -Xms256M /www/wwwroot/backend/echat/server-deploy-professional-2.20.jar --server.port=8082 --spring.profiles.active=prod,modules
其中 --server.port=8082 的端口需要跟项目端口填写的一致,baota.server.echat.work 是该后端应用的外网域名,根据自己的情况填写。环境变量说明如下:
SPRING_DATASOURCE_URL: 数据库内网连接地址
SPRING_DATASOURCE_USERNAME: 数据库用户名
SPRING_DATASOURCE_PASSWORD: 数据库密码
SPRING_REDIS_PASSWORD: REDIS密码
FILE_HOST: 文件服务器域名
FILE_RESOURCE_ADDRESS: 文件服务器资源前缀
FILE_UPLOAD_FILE_DIR: 本地文件服务器目录保存地址
4.3 开放后端应用的外网映射
域名设置为baota.server.echat.work,这个根据自己实际情况填写
4.4 启动应用,验证
验证: 访问http://baota.server.echat.work/ 出现页面即成功
5.安装后端管理台应用
5.1上传后端应用
把 admin-2.20.jar 上传到宝塔 /www/wwwroot/backend/admin 目录下
另外新建logs目录,权限设置为777
5.2 部署后端管理台应用
项目执行命令
/www/server/java/jdk1.8.0_131/bin/java -jar -DSPRING_DATASOURCE_URL="jdbc:mysql://localhost:3306/echat?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai" -DSPRING_DATASOURCE_USERNAME="echat" -DSPRING_DATASOURCE_PASSWORD="echatechat" -DSPRING_REDIS_PASSWORD="" -DECHATIM_CSVC_EXTERNAL_JSSDK_URL="http://baota.admin.echat.work" -DECHATIM_CSVC_EXTERNAL_BASE_URL="http://baota.csvc.echat.work" -DECHATIM_CSVC_API_BASE_URL="http://baota.server.echat.work" -Xmx1024M -Xms256M /www/wwwroot/backend/admin/admin-2.20.jar --server.port=8083 --spring.profiles.active=prod
其中 --server.port=8083 的端口需要跟项目端口填写的一致。
SPRING_DATASOURCE_URL: 数据库内网连接地址
SPRING_DATASOURCE_USERNAME: 数据库用户名
SPRING_DATASOURCE_PASSWORD: 数据库密码
SPRING_REDIS_PASSWORD: REDIS密码
ECHATIM_CSVC_EXTERNAL_JSSDK_URL: 后端管理台外网访问地址(仅客服版需配置)
ECHATIM_CSVC_EXTERNAL_BASE_URL: 客服静态页外网访问地址(仅客服版需配置)
ECHATIM_CSVC_API_BASE_URL: 后端应用外网访问地址(仅客服版需配置)
5.3 启动应用,验证
6. 安装前端应用
6.1 安装uniapp h5前端
把 h5.zip 上传到宝塔 /www/wwwroot/html/demo 目录下, 执行“解压”
添加站点,目录选择 /www/wwwroot/html/demo,根据自己的情况填写域名, 这里填写baota.h5.echat.work
按如下的配置配置站点:
server
{
listen 80;
server_name baota.h5.echat.work;
server_tokens off;
# access_log /var/log/nginx/admin_html_access.log;
# Max request size
client_max_body_size 20M;
large_client_header_buffers 4 256k;
location / {
root /www/wwwroot/html/demo;
index index.html index.htm;
}
location /downloads {
alias /www/wwwroot/html/downloads;
sendfile on;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
access_log /www/wwwlogs/baota.h5.echat.work.log;
error_log /www/wwwlogs/baota.h5.echat.work.error.log;
}
6.2 安装web前端, admin管理台前端, 客服版前端
这里的流程与6.1 一样,分别是:
web前端: 上传web.zip 到/www/wwwroot/html/demo_web目录下,执行解压
admin管理台前端: 上传admin_web_dist.zip 到/www/wwwroot/html/admin目录下,执行解压
客服版顾客h5前端: 上传csvc_customer_mobile.zip 到/www/wwwroot/html/csvc/csvc_mobile_customer目录下,执行解压
客服版顾客web前端: 上传csvc_customer_pc.zip 到/www/wwwroot/html/csvc/csvc_pc_customer,执行解压
web前端nginx配置:
server {
listen 80;
server_name baota.web.echat.work;
server_tokens off;
# access_log /var/log/nginx/admin_html_access.log;
# Max request size
client_max_body_size 20M;
large_client_header_buffers 4 256k;
location / {
root /www/wwwroot/html/demo_web;
index index.html index.htm;
}
access_log /www/wwwlogs/baota.web.echat.work.log;
error_log /www/wwwlogs/baota.web.echat.work.error.log;
}
admin前端nginx配置:
server
{
listen 80;
server_name baota.admin.echat.work;
server_tokens off;
# access_log /var/log/nginx/admin_html_access.log;
# Max request size
client_max_body_size 20M;
large_client_header_buffers 4 256k;
location / {
root /www/wwwroot/html/admin;
index index.html index.htm;
}
location /v1 {
proxy_pass http://127.0.0.1:8083;
proxy_set_header Host $host;
proxy_set_header x-forwarded-for $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
access_log /www/wwwlogs/baota.admin.echat.work.log;
error_log /www/wwwlogs/baota.admin.echat.work.error.log;
}
客服版csvc前端nginx配置:
server
{
listen 80;
server_name baota.csvc.echat.work;
# Max request size
client_max_body_size 100M;
large_client_header_buffers 4 256k;
location / {
root html;
index index.html index.htm;
}
location ^~/csvc_pc_customer/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:57071/;
}
location ^~/csvc_mobile_customer/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:57072/;
}
location ^~/csvc_mobile_staff/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:57073/;
}
location /downloads {
alias /www/wwwroot/html/downloads;
sendfile on;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
access_log /www/wwwlogs/baota.csvc.echat.work.log;
error_log /www/wwwlogs/baota.csvc.echat.work.error.log;
}
server {
listen 57071;
server_name 127.0.0.1;
location / {
root /www/wwwroot/html/csvc/csvc_pc_customer;
index index.html index.htm;
}
}
server {
listen 57072;
server_name 127.0.0.1;
location / {
root /www/wwwroot/html/csvc/csvc_mobile_customer;
index index.html index.htm;
}
}
server {
listen 57073;
server_name 127.0.0.1;
location / {
root /www/wwwroot/html/csvc/csvc_mobile_staff;
index index.html index.htm;
}
}
7. 验证应用
移动网页端H5: 访问 http://baota.h5.echat.work
网页端1.0版: 访问 http://baota.web.echat.work
客服前端: 访问 http://baota.csvc.echat.work/csvc_pc_customer, http://baota.csvc.echat.work/csvc_mobile_customer
安卓端: 访问 http://baota.h5.echat.work/downloads/app/
客服PC端: 访问 http://baota.csvc.echat.work/downloads/staff_win32.zip